home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 November / SGI Freeware 1999 November - Disc 2.iso / dist / fw_screen.idb / usr / freeware / info / screen.info-3.z / screen.info-3 (.txt)
GNU Info File  |  1998-10-27  |  51KB  |  997 lines

  1. This is Info file screen.info, produced by Makeinfo-1.55 from the input
  2. file ./screen.texinfo.
  3.    This file documents the `Screen' virtual terminal manager.
  4.    Copyright (c) 1993 Free Software Foundation, Inc.
  5.    Permission is granted to make and distribute verbatim copies of this
  6. manual provided the copyright notice and this permission notice are
  7. preserved on all copies.
  8.    Permission is granted to copy and distribute modified versions of
  9. this manual under the conditions for verbatim copying, provided that
  10. the entire resulting derived work is distributed under the terms of a
  11. permission notice identical to this one.
  12.    Permission is granted to copy and distribute translations of this
  13. manual into another language, under the above conditions for modified
  14. versions, except that this permission notice may be stated in a
  15. translation approved by the Foundation.
  16. File: screen.info,  Node: Key Binding,  Next: Flow Control,  Prev: Subprocess Execution,  Up: Top
  17. Key Binding
  18. ***********
  19.    You may disagree with some of the default bindings (I know I do).
  20. The `bind' command allows you to redefine them to suit your preferences.
  21. * Menu:
  22. * Bind::                        `bind' syntax.
  23. * Bind Examples::               Using `bind'.
  24. * Command Character::           The character used to start keyboard commands.
  25. * Help::                        Show current key bindings.
  26. * Bindkey::            `bindkey' syntax.
  27. * Bindkey Examples::        Some easy examples.
  28. * Bindkey Control::        How to control the bindkey mechanism.
  29. File: screen.info,  Node: Bind,  Next: Bind Examples,  Up: Key Binding
  30. The `bind' command
  31. ==================
  32.  - Command: bind KEY [COMMAND [ARGS]]
  33.      (none)
  34.      Bind a command to a key.  The KEY argument is either a single
  35.      character, a two-character sequence of the form `^x' (meaning
  36.      `C-x'), a backslash followed by an octal number (specifying the
  37.      ASCII code of the character), or a backslash followed by a second
  38.      character, such as `\^' or `\\'.  The argument can also be quoted,
  39.      if you like.  If no further argument is given, any previously
  40.      established binding for this key is removed.  The COMMAND argument
  41.      can be any command (*note Command Index::.).
  42.      By default, most suitable commands are bound to one or more keys
  43.      (*note Default Key Bindings::.; for instance, the command to
  44.      create a new window is bound to `C-c' and `c'.  The `bind' command
  45.      can be used to redefine the key bindings and to define new
  46.      bindings.
  47. File: screen.info,  Node: Bind Examples,  Next: Command Character,  Prev: Bind,  Up: Key Binding
  48. Examples of the `bind' command
  49. ==============================
  50. Some examples:
  51.      bind ' ' windows
  52.      bind ^f screen telnet foobar
  53.      bind \033 screen -ln -t root -h 1000 9 su
  54. would bind the space key to the command that displays a list of windows
  55. (so that the command usually invoked by `C-a C-w' would also be
  56. available as `C-a space'), bind `C-f' to the command "create a window
  57. with a TELNET connection to foobar", and bind ESC to the command that
  58. creates an non-login window with title `root' in slot #9, with a
  59. super-user shell and a scrollbackbuffer of 1000 lines.
  60. File: screen.info,  Node: Command Character,  Next: Help,  Prev: Bind Examples,  Up: Key Binding
  61. Command Character
  62. =================
  63.  - Command: escape XY
  64.      (none)
  65.      Set the command character to X and the character generating a
  66.      literal command character to Y (just like with the `-e' option).
  67.      Each argument is either a single character, a two-character
  68.      sequence of the form `^x' (meaning `C-x'), a backslash followed by
  69.      an octal number (specifying the ASCII code of the character), or a
  70.      backslash followed by a second character, such as `\^' or `\\'.
  71.      The default is `^Aa', but ```' is recommended by one of the
  72.      authors.
  73.  - Command: defescape XY
  74.      (none)
  75.      Set the default command characters. This is equivalent to the
  76.      command `escape' except that it is useful for multiuser sessions
  77.      only.  In a multiuser session `escape' changes the command
  78.      character of the calling user, where `defescape' changes the
  79.      default command characters for users that will be added later.
  80.  - Command: meta
  81.      (`C-a a')
  82.      Send the command character (`C-a') to the process in the current
  83.      window.  The keystroke for this command is the second parameter to
  84.      the `-e' command line switch (*note Invoking Screen::.), or the
  85.      `escape' .screenrc directive.
  86.  - Command: command
  87.      (none)
  88.      This command has the same effect as typing the screen escape
  89.      character (`C-a'). It is probably only useful for key bindings.
  90.      *Note Bindkey::.
  91. File: screen.info,  Node: Help,  Next: Bindkey,  Prev: Command Character,  Up: Key Binding
  92.  - Command: help
  93.      (`C-a ?')
  94.      Displays a help screen showing you all the key bindings.  The first
  95.      pages list all the internal commands followed by their bindings.
  96.      Subsequent pages will display the custom commands, one command per
  97.      key.  Press space when you're done reading each page, or return to
  98.      exit early.  All other characters are ignored.  *Note Default Key
  99.      Bindings::.
  100. File: screen.info,  Node: Bindkey,  Next: Bindkey Examples,  Prev: Help,  Up: Key Binding
  101. Bindkey
  102. =======
  103.  - Command: bindkey [OPTS] [STRING [CMD ARGS]]
  104.      (none)
  105.      This command manages screen's input translation tables. Every
  106.      entry in one of the tables tells screen how to react if a certain
  107.      sequence of characters is encountered. There are three tables: one
  108.      that should contain actions programmed by the user, one for the
  109.      default actions used for terminal emulation and one for screen's
  110.      copy mode to do cursor movement. *Note Input Translation:: for a
  111.      list of default key bindings.
  112.      If the `-d' option is given, bindkey modifies the default table,
  113.      `-m' changes the copy mode table and with neither option the user
  114.      table is selected. The argument `string' is the sequence of
  115.      characters to which an action is bound. This can either be a fixed
  116.      tring or a termcap keyboard capability name (selectable with the
  117.      `-k' option).
  118.      Some keys on a VT100 terminal can send a different string if
  119.      application mode is turned on (e.g. the cursor keys).  Such keys
  120.      have two entries in the translation table. You can select the
  121.      application mode entry by specifying the `-a' option.
  122.      The `-t' option tells screen not to do intercharacter timing. One
  123.      cannot turn off the timing if a termcap capabilty is used.
  124.      `cmd' can be any of screen's commands with an arbitrary number of
  125.      `args'. If `cmd' is omitted the keybinding is removed from the
  126.      table.
  127. File: screen.info,  Node: Bindkey Examples,  Next: Bindkey Control,  Prev: Bindkey,  Up: Key Binding
  128. Bindkey Examples
  129. ================
  130. Here are some examples of keyboard bindings:
  131.      bindkey -d
  132. Show all of the default key bindings. The application mode entries are
  133. marked with [A].
  134.      bindkey -k k1 select 1
  135. Make the "F1" key switch to window one.
  136.      bindkey -t foo stuff barfoo
  137. Make `foo' an abrevation of the word `barfoo'. Timeout is disabled so
  138. that users can type slowly.
  139.      bindkey "\024" mapdefault
  140. This keybinding makes `C-t' an escape character for keybindings. If you
  141. did the above `stuff barfoo' binding, you can enter the word `foo' by
  142. typing `C-t foo'. If you want to insert a `C-t' you have to press the
  143. key twice (i.e. escape the escape binding).
  144.      bindkey -k F1 command
  145. Make the F11 (not F1!) key an alternative screen escape (besides `C-a').
  146. File: screen.info,  Node: Bindkey Control,  Prev: Bindkey Examples,  Up: Key Binding
  147. Bindkey Control
  148. ===============
  149.  - Command: mapdefault
  150.      (none)
  151.      Tell screen that the next input character should only be looked up
  152.      in the default bindkey table.
  153.  - Command: mapnotnext
  154.      (none)
  155.      Like mapdefault, but don't even look in the default bindkey table.
  156.  - Command: maptimeout TIMO
  157.      (none)
  158.      Set the intercharacter timer for input sequence detection to a
  159.      timeout of TIMO ms. The default timeout is 300ms. Maptimeout with
  160.      no arguments shows the current setting.
  161. File: screen.info,  Node: Flow Control,  Next: Termcap,  Prev: Key Binding,  Up: Top
  162. Flow Control
  163. ************
  164.    `screen' can trap flow control characters or pass them to the
  165. program, as you see fit.  This is useful when your terminal wants to use
  166. XON/XOFF flow control and you are running a program which wants to use
  167. ^S/^Q for other purposes (i.e. `emacs').
  168. * Menu:
  169. * Flow Control Summary::        The effect of `screen' flow control
  170. * Flow::                        Setting the flow control behavior
  171. * XON/XOFF::                    Sending XON or XOFF to the window
  172. File: screen.info,  Node: Flow Control Summary,  Next: Flow,  Up: Flow Control
  173. About `screen' flow control settings
  174. ====================================
  175.    Each window has a flow-control setting that determines how screen
  176. deals with the XON and XOFF characters (and perhaps the interrupt
  177. character).  When flow-control is turned off, screen ignores the XON
  178. and XOFF characters, which allows the user to send them to the current
  179. program by simply typing them (useful for the `emacs' editor, for
  180. instance).  The trade-off is that it will take longer for output from a
  181. "normal" program to pause in response to an XOFF.  With flow-control
  182. turned on, XON and XOFF characters are used to immediately pause the
  183. output of the current window.  You can still send these characters to
  184. the current program, but you must use the appropriate two-character
  185. screen commands (typically `C-a q' (xon) and `C-a s' (xoff)).  The
  186. xon/xoff commands are also useful for typing C-s and C-q past a
  187. terminal that intercepts these characters.
  188.    Each window has an initial flow-control value set with either the
  189. `-f' option or the `defflow' command.  By default the windows are set
  190. to automatic flow-switching.  It can then be toggled between the three
  191. states 'fixed on', 'fixed off' and 'automatic' interactively with the
  192. `flow' command bound to `C-a f'.
  193.    The automatic flow-switching mode deals with flow control using the
  194. TIOCPKT mode (like `rlogin' does). If the tty driver does not support
  195. TIOCPKT, screen tries to determine the right mode based on the current
  196. setting of the application keypad -- when it is enabled, flow-control
  197. is turned off and visa versa.  Of course, you can still manipulate
  198. flow-control manually when needed.
  199.    If you're running with flow-control enabled and find that pressing
  200. the interrupt key (usually C-c) does not interrupt the display until
  201. another 6-8 lines have scrolled by, try running screen with the
  202. `interrupt' option (add the `interrupt' flag to the `flow' command in
  203. your .screenrc, or use the `-i' command-line option).  This causes the
  204. output that `screen' has accumulated from the interrupted program to be
  205. flushed.  One disadvantage is that the virtual terminal's memory
  206. contains the non-flushed version of the output, which in rare cases can
  207. cause minor inaccuracies in the output.  For example, if you switch
  208. screens and return, or update the screen with `C-a l' you would see the
  209. version of the output you would have gotten without `interrupt' being
  210. on.  Also, you might need to turn off flow-control (or use auto-flow
  211. mode to turn it off automatically) when running a program that expects
  212. you to type the interrupt character as input, as the `interrupt'
  213. parameter only takes effect when flow-control is enabled.  If your
  214. program's output is interrupted by mistake, a simple refresh of the
  215. screen with `C-a l' will restore it.  Give each mode a try, and use
  216. whichever mode you find more comfortable.
  217. File: screen.info,  Node: Flow,  Next: XON/XOFF,  Prev: Flow Control Summary,  Up: Flow Control
  218.  - Command: defflow FSTATE [INTERRUPT]
  219.      (none)
  220.      Same as the `flow' command except that the default setting for new
  221.      windows is changed. Initial setting is `auto'.  Specifying `flow
  222.      auto interrupt' has the same effect as the command-line options
  223.      `-fa' and `-i'.  Note that if `interrupt' is enabled, all existing
  224.      displays are changed immediately to forward interrupt signals.
  225.  - Command: flow [FSTATE]
  226.      (`C-a f', `C-a C-f')
  227.      Sets the flow-control mode for this window to FSTATE, which can be
  228.      `on', `off' or `auto'.  Without parameters it cycles the current
  229.      window's flow-control setting.  Default is set by `defflow'.
  230. File: screen.info,  Node: XON/XOFF,  Prev: Flow,  Up: Flow Control
  231. XON and XOFF
  232. ============
  233.  - Command: xon
  234.      (`C-a q', `C-a C-q')
  235.      Send a ^Q (ASCII XON) to the program in the current window.
  236.      Redundant if flow control is set to `off' or `auto'.
  237.  - Command: xoff
  238.      (`C-a s', `C-a C-s')
  239.      Send a ^S (ASCII XOFF) to the program in the current window.
  240. File: screen.info,  Node: Termcap,  Next: Message Line,  Prev: Flow Control,  Up: Top
  241. Termcap
  242. *******
  243.    `screen' demands the most out of your terminal so that it can
  244. perform its VT100 emulation most efficiently.  These functions provide
  245. means for tweaking the termcap entries for both your physical terminal
  246. and the one simulated by `screen'.
  247. * Menu:
  248. * Window Termcap::              Choosing a termcap entry for the window.
  249. * Dump Termcap::                Write out a termcap entry for the window.
  250. * Termcap Syntax::              The `termcap' and `terminfo' commands.
  251. * Termcap Examples::            Uses for `termcap'.
  252. * Special Capabilities::        Non-standard capabilities used by `screen'.
  253. * Autonuke::            Flush unseen output
  254. * Obuflimit::            Allow pending output when reading more
  255. * Character Translation::       Emulating fonts and charsets.
  256. File: screen.info,  Node: Window Termcap,  Next: Dump Termcap,  Up: Termcap
  257. Choosing the termcap entry for a window
  258. =======================================
  259.    Usually `screen' tries to emulate as much of the VT100/ANSI standard
  260. as possible. But if your terminal lacks certain capabilities the
  261. emulation may not be complete. In these cases `screen' has to tell the
  262. applications that some of the features are missing. This is no problem
  263. on machines using termcap, because `screen' can use the `$TERMCAP'
  264. variable to customize the standard screen termcap.
  265.    But if you do a rlogin on another machine or your machine supports
  266. only terminfo this method fails. Because of this `screen' offers a way
  267. to deal with these cases. Here is how it works:
  268.    When `screen' tries to figure out a terminal name for itself, it
  269. first looks for an entry named `screen.TERM', where TERM is the
  270. contents of your `$TERM' variable.  If no such entry exists, `screen'
  271. tries `screen' (or `screen-w', if the terminal is wide (132 cols or
  272. more)).  If even this entry cannot be found, `vt100' is used as a
  273. substitute.
  274.    The idea is that if you have a terminal which doesn't support an
  275. important feature (e.g. delete char or clear to EOS) you can build a new
  276. termcap/terminfo entry for `screen' (named `screen.DUMBTERM') in which
  277. this capability has been disabled.  If this entry is installed on your
  278. machines you are able to do a rlogin and still keep the correct
  279. termcap/terminfo entry.  The terminal name is put in the `$TERM'
  280. variable of all new windows.  `screen' also sets the `$TERMCAP'
  281. variable reflecting the capabilities of the virtual terminal emulated.
  282. Furthermore, the variable `$WINDOW' is set to the window number of each
  283. window.
  284.    The actual set of capabilities supported by the virtual terminal
  285. depends on the capabilities supported by the physical terminal.  If, for
  286. instance, the physical terminal does not support underscore mode,
  287. `screen' does not put the `us' and `ue' capabilities into the window's
  288. `$TERMCAP' variable, accordingly.  However, a minimum number of
  289. capabilities must be supported by a terminal in order to run `screen';
  290. namely scrolling, clear screen, and direct cursor addressing (in
  291. addition, `screen' does not run on hardcopy terminals or on terminals
  292. that over-strike).
  293.    Also, you can customize the `$TERMCAP' value used by `screen' by
  294. using the `termcap' command, or by defining the variable `$SCREENCAP'
  295. prior to startup.  When the latter defined, its value will be copied
  296. verbatim into each window's `$TERMCAP' variable.  This can either be
  297. the full terminal definition, or a filename where the terminal `screen'
  298. (and/or `screen-w') is defined.
  299.    Note that `screen' honors the `terminfo' command if the system uses
  300. the terminfo database rather than termcap.  On such machines the
  301. `$TERMCAP' variable has no effect and you must use the `dumptermcap'
  302. command (*note Dump Termcap::.) and the `tic' program to generate
  303. terminfo entries for `screen' windows.
  304.    When the boolean `G0' capability is present in the termcap entry for
  305. the terminal on which `screen' has been called, the terminal emulation
  306. of `screen' supports multiple character sets.  This allows an
  307. application to make use of, for instance, the VT100 graphics character
  308. set or national character sets.  The following control functions from
  309. ISO 2022 are supported: `lock shift G0' (`SI'), `lock shift G1' (`SO'),
  310. `lock shift G2', `lock shift G3', `single shift G2', and `single shift
  311. G3'.  When a virtual terminal is created or reset, the ASCII character
  312. set is designated as `G0' through `G3'.  When the `G0' capability is
  313. present, screen evaluates the capabilities `S0', `E0', and `C0' if
  314. present. `S0' is the sequence the terminal uses to enable and start the
  315. graphics character set rather than `SI'.  `E0' is the corresponding
  316. replacement for `SO'. `C0' gives a character by character translation
  317. string that is used during semi-graphics mode.  This string is built
  318. like the `acsc' terminfo capability.
  319.    When the `po' and `pf' capabilities are present in the terminal's
  320. termcap entry, applications running in a `screen' window can send
  321. output to the printer port of the terminal.  This allows a user to have
  322. an application in one window sending output to a printer connected to
  323. the terminal, while all other windows are still active (the printer
  324. port is enabled and disabled again for each chunk of output).  As a
  325. side-effect, programs running in different windows can send output to
  326. the printer simultaneously.  Data sent to the printer is not displayed
  327. in the window.
  328.    Some capabilities are only put into the `$TERMCAP' variable of the
  329. virtual terminal if they can be efficiently implemented by the physical
  330. terminal.  For instance, `dl' (delete line) is only put into the
  331. `$TERMCAP' variable if the terminal supports either delete line itself
  332. or scrolling regions. Note that this may provoke confusion, when the
  333. session is reattached on a different terminal, as the value of
  334. `$TERMCAP' cannot be modified by parent processes.  You can force
  335. `screen' to include all capabilities in `$TERMCAP' with the `-a'
  336. command-line option (*note Invoking Screen::.).
  337. File: screen.info,  Node: Dump Termcap,  Next: Termcap Syntax,  Prev: Window Termcap,  Up: Termcap
  338. Write out the window's termcap entry
  339. ====================================
  340.  - Command: dumptermcap
  341.      (`C-a .')
  342.      Write the termcap entry for the virtual terminal optimized for the
  343.      currently active window to the file `.termcap' in the user's
  344.      `$HOME/.screen' directory (or wherever `screen' stores its
  345.      sockets. *note Files::.).  This termcap entry is identical to the
  346.      value of the environment variable `$TERMCAP' that is set up by
  347.      `screen' for each window. For terminfo based systems you will need
  348.      to run a converter like `captoinfo' and then compile the entry with
  349.      `tic'.
  350. File: screen.info,  Node: Termcap Syntax,  Next: Termcap Examples,  Prev: Dump Termcap,  Up: Termcap
  351. The `termcap' command
  352. =====================
  353.  - Command: termcap TERM TERMINAL-TWEAKS [WINDOW-TWEAKS]
  354.  - Command: terminfo TERM TERMINAL-TWEAKS [WINDOW-TWEAKS]
  355.  - Command: termcapinfo TERM TERMINAL-TWEAKS [WINDOW-TWEAKS]
  356.      (none)
  357.      Use this command to modify your terminal's termcap entry without
  358.      going through all the hassles involved in creating a custom
  359.      termcap entry.  Plus, you can optionally customize the termcap
  360.      generated for the windows.  You have to place these commands in
  361.      one of the screenrc starup files, as they are meaningless once the
  362.      terminal emulator is booted.
  363.      If your system uses the terminfo database rather than termcap,
  364.      `screen' will understand the `terminfo' command which has the same
  365.      effects as the `termcap' command.  Two separate commands are
  366.      provided, as there are subtle syntactic differences, e.g. when
  367.      parameter interpolation (using `%') is required. Note that the
  368.      termcap names of the capabilities have to be used with the
  369.      `terminfo' command.
  370.      In many cases, where the arguments are valid in both terminfo and
  371.      termcap syntax, you can use the command `termcapinfo', which is
  372.      just a shorthand for a pair of `termcap' and `terminfo' commands
  373.      with identical arguments.
  374.    The first argument specifies which terminal(s) should be affected by
  375. this definition.  You can specify multiple terminal names by separating
  376. them with `|'s.  Use `*' to match all terminals and `vt*' to match all
  377. terminals that begin with `vt'.
  378.    Each TWEAK argument contains one or more termcap defines (separated
  379. by `:'s) to be inserted at the start of the appropriate termcap entry,
  380. enhancing it or overriding existing values.  The first tweak modifies
  381. your terminal's termcap, and contains definitions that your terminal
  382. uses to perform certain functions.  Specify a null string to leave this
  383. unchanged (e.g. "").  The second (optional) tweak modifies all the
  384. window termcaps, and should contain definitions that screen understands
  385. (*note Virtual Terminal::.).
  386. File: screen.info,  Node: Termcap Examples,  Next: Special Capabilities,  Prev: Termcap Syntax,  Up: Termcap
  387. Termcap Examples
  388. ================
  389.    Some examples:
  390.      termcap xterm*  xn:hs@
  391. Informs `screen' that all terminals that begin with `xterm' have firm
  392. auto-margins that allow the last position on the screen to be updated
  393. (xn), but they don't really have a status line (no 'hs' - append `@' to
  394. turn entries off).  Note that we assume `xn' for all terminal names
  395. that start with `vt', but only if you don't specify a termcap command
  396. for that terminal.
  397.      termcap vt*  xn
  398.      termcap vt102|vt220  Z0=\E[?3h:Z1=\E[?3l
  399. Specifies the firm-margined `xn' capability for all terminals that
  400. begin with `vt', and the second line will also add the escape-sequences
  401. to switch into (Z0) and back out of (Z1) 132-character-per-line mode if
  402. this is a VT102 or VT220.  (You must specify Z0 and Z1 in your termcap
  403. to use the width-changing commands.)
  404.      termcap vt100  ""  l0=PF1:l1=PF2:l2=PF3:l3=PF4
  405. This leaves your vt100 termcap alone and adds the function key labels to
  406. each window's termcap entry.
  407.      termcap h19|z19  am@:im=\E@:ei=\EO  dc=\E[P
  408. Takes a h19 or z19 termcap and turns off auto-margins (am@) and enables
  409. the insert mode (im) and end-insert (ei) capabilities (the `@' in the
  410. `im' string is after the `=', so it is part of the string).  Having the
  411. `im' and `ei' definitions put into your terminal's termcap will cause
  412. screen to automatically advertise the character-insert capability in
  413. each window's termcap.  Each window will also get the delete-character
  414. capability (dc) added to its termcap, which screen will translate into
  415. a line-update for the terminal (we're pretending it doesn't support
  416. character deletion).
  417.    If you would like to fully specify each window's termcap entry, you
  418. should instead set the `$SCREENCAP' variable prior to running `screen'.
  419. *Note Virtual Terminal::, for the details of the `screen' terminal
  420. emulation.  *Note Termcap: (termcap)Top, for more information on
  421. termcap definitions.
  422. File: screen.info,  Node: Special Capabilities,  Next: Autonuke,  Prev: Termcap Examples,  Up: Termcap
  423. Special Terminal Capabilities
  424. =============================
  425.    The following table describes all terminal capabilities that are
  426. recognized by `screen' and are not in the termcap manual (*note
  427. Termcap: (termcap)Top.).  You can place these capabilities in your
  428. termcap entries (in `/etc/termcap') or use them with the commands
  429. `termcap', `terminfo' and `termcapinfo' in your `screenrc' files. It is
  430. often not possible to place these capabilities in the terminfo database.
  431.      (bool)
  432.      Terminal has VT100 style margins (`magic margins'). Note that this
  433.      capability is obsolete -- `screen' now uses the standard `xn'
  434.      instead.
  435.      (str)
  436.      Change width to 132 columns.
  437.      (str)
  438.      Change width to 80 columns.
  439.      (str)
  440.      Resize display. This capability has the desired width and height as
  441.      arguments.  SunView(tm) example: `\E[8;%d;%dt'.
  442.      (bool)
  443.      Terminal doesn't need flow control. Send ^S and ^Q direct to the
  444.      application. Same as `flow off'. The opposite of this capability
  445.      is `nx'.
  446.      (bool)
  447.      Terminal can deal with ISO 2022 font selection sequences.
  448.      (str)
  449.      Switch charset `G0' to the specified charset. Default is `\E(%.'.
  450.      (str)
  451.      Switch charset `G0' back to standard charset. Default is `\E(B'.
  452.      (str)
  453.      Use the string as a conversion table for font 0. See the `ac'
  454.      capability for more details.
  455.      (str)
  456.      Switch cursor keys to application mode.
  457.      (str)
  458.      Switch cursor keys to cursor mode.
  459.      (bool)
  460.      Enable autonuke for displays of this terminal type.  (*note
  461.      Autonuke::.).
  462.      (num)
  463.      Set the output buffer limit. See the `obuflimit' command (*note
  464.      Obuflimit::.) for more details.
  465.      (str)
  466.      Set the kanji type of the terminal. Valid strings are `jis', `euc'
  467.      and `sjis'.
  468.      (str)
  469.      Change character forground color in an ANSI conform way. This
  470.      capability will almost always be set to `\E[3%dm' (`\E[3%p1%dm' on
  471.      terminfo machines).
  472.      (str)
  473.      Same as `AF', but change background color.
  474.      (bool)
  475.      Does understand ANSI set default fg/bg color (`\E[39m / \E[49m').
  476.      (str)
  477.      Describe a translation of characters to strings depending on the
  478.      current font.  (*note Character Translation::.).
  479. File: screen.info,  Node: Autonuke,  Next: Obuflimit,  Prev: Special Capabilities,  Up: Termcap
  480. Autonuke
  481. ========
  482.  - Command: autonuke STATE
  483.      (none)
  484.      Sets whether a clear screen sequence should nuke all the output
  485.      that has not been written to the terminal. *Note Obuflimit::.
  486.      This property is set per display, not per window.
  487.  - Command: defautonuke STATE
  488.      (none)
  489.      Same as the `autonuke' command except that the default setting for
  490.      new displays is also changed. Initial setting is `off'.  Note that
  491.      you can use the special `AN' terminal capability if you want to
  492.      have a terminal type dependent setting.
  493. File: screen.info,  Node: Obuflimit,  Next: Character Translation,  Prev: Autonuke,  Up: Termcap
  494. Obuflimit
  495. =========
  496.  - Command: obuflimit [LIMIT]
  497.      (none)
  498.      If the output buffer contains more bytes than the specified limit,
  499.      no more data will be read from the windows. The default value is
  500.      256. If you have a fast display (like `xterm'), you can set it to
  501.      some higher value. If no argument is specified, the current
  502.      setting is displayed.  This property is set per display, not per
  503.      window.
  504.  - Command: defobuflimit LIMIT
  505.      (none)
  506.      Same as the `obuflimit' command except that the default setting
  507.      for new displays is also changed. Initial setting is 256 bytes.
  508.      Note that you can use the special `OL' terminal capability if you
  509.      want to have a terminal type dependent limit.
  510. File: screen.info,  Node: Character Translation,  Prev: Obuflimit,  Up: Termcap
  511. Character Translation
  512. =====================
  513.    `Screen' has a powerful mechanism to translate characters to
  514. arbitrary strings depending on the current font and terminal type.  Use
  515. this feature if you want to work with a common standard character set
  516. (say ISO8851-latin1) even on terminals that scatter the more unusual
  517. characters over several national language font pages.
  518.    Syntax:
  519.          XC=<CHARSET-MAPPING>{,,<CHARSET-MAPPING>}
  520.          <CHARSET-MAPPING> := <DESIGNATOR><TEMPLATE>{,<MAPPING>}
  521.          <MAPPING> := <CHAR-TO-BE-MAPPED><TEMPLATE-ARG>
  522.    The things in braces may be repeated any number of times.
  523.    A <CHARSET-MAPPING> tells screen how to map characters in font
  524. <DESIGNATOR> (`B': Ascii, `A': UK, `K': german, etc.) to strings. Every
  525. <MAPPING> describes to what string a single character will be
  526. translated. A template mechanism is used, as most of the time the codes
  527. have a lot in common (for example strings to switch to and from another
  528. charset). Each occurence of `%' in <TEMPLATE> gets substituted with the
  529. TEMPLATE-ARG specified together with the character. If your strings are
  530. not similar at all, then use `%' as a template and place the full
  531. string in <TEMPLATE-ARG>. A quoting mechanism was added to make it
  532. possible to use a real `%'. The `\' character quotes the special
  533. characters `\', `%', and `,'.
  534.    Here is an example:
  535.          termcap hp700 'XC=B\E(K%\E(B,\304[,\326\\\\,\334]'
  536.    This tells `screen', how to translate ISOlatin1 (charset `B') upper
  537. case umlaut characters on a `hp700' terminal that has a german charset.
  538. `\304' gets translated to `\E(K[\E(B' and so on.  Note that this line
  539. gets parsed *three* times before the internal lookup table is built,
  540. therefore a lot of quoting is needed to create a single `\'.
  541.    Another extension was added to allow more emulation: If a mapping
  542. translates the unquoted `%' char, it will be sent to the terminal
  543. whenever screen switches to the corresponding <DESIGNATOR>.  In this
  544. special case the template is assumed to be just `%' because the charset
  545. switch sequence and the character mappings normaly haven't much in
  546. common.
  547.    This example shows one use of the extension:
  548.          termcap xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334'
  549.    Here, a part of the german (`K') charset is emulated on an xterm.
  550. If screen has to change to the `K' charset, `\E(B' will be sent to the
  551. terminal, i.e. the ASCII charset is used instead. The template is just
  552. `%', so the mapping is straightforward: `[' to `\304', `\' to `\326',
  553. and `]' to `\334'.
  554. File: screen.info,  Node: Message Line,  Next: Logging,  Prev: Termcap,  Up: Top
  555. The Message Line
  556. ****************
  557.    `screen' displays informational messages and other diagnostics in a
  558. "message line" at the bottom of the screen.  If your terminal has a
  559. status line defined in its termcap, screen will use this for displaying
  560. its messages, otherwise the last line of the screen will be temporarily
  561. overwritten and output will be momentarily interrupted.  The message
  562. line is automatically removed after a few seconds delay, but it can also
  563. be removed early (on terminals without a status line) by beginning to
  564. type.
  565. * Menu:
  566. * Privacy Message::             Using the message line from your program.
  567. * Hardware Status Line::        Use the terminal's hardware status line.
  568. * Last Message::                Redisplay the last message.
  569. * Message Wait::                Control how long messages are displayed.
  570. File: screen.info,  Node: Privacy Message,  Next: Hardware Status Line,  Up: Message Line
  571. Using the message line from your program
  572. ========================================
  573.    The message line facility can be used by an application running in
  574. the current window by means of the ANSI "Privacy message" control
  575. sequence.  For instance, from within the shell, try something like:
  576.      echo "
  577. ^Hello world from window $WINDOW
  578.    where `
  579. ' is ASCII ESC and `^' is a literal caret or up-arrow.
  580. File: screen.info,  Node: Hardware Status Line,  Next: Last Message,  Prev: Privacy Message,  Up: Message Line
  581. Hardware Status Line
  582. ====================
  583.  - Command: hardstatus [STATE]
  584.      (none)
  585.      Toggles the use of the terminal's hardware status line. If `on',
  586.      `screen' will use this facility to display one line messages.
  587.      Otherwise these messages are overlayed in reverse video mode at the
  588.      display line. Note that the hardstatus feature can only be used if
  589.      the termcap/terminfo capabilities "hs", "ts", "fs" and "ds" are set
  590.      properly.  Default is `on' whenever the "hs" capability is present.
  591. File: screen.info,  Node: Last Message,  Next: Message Wait,  Prev: Hardware Status Line,  Up: Message Line
  592. Display Last Message
  593. ====================
  594.  - Command: lastmsg
  595.      (`C-a m', `C-a C-m')
  596.      Repeat the last message displayed in the message line.  Useful if
  597.      you're typing when a message appears, because (unless your
  598.      terminal has a hardware status line) the message goes away when
  599.      you press a key.
  600. File: screen.info,  Node: Message Wait,  Prev: Last Message,  Up: Message Line
  601. Message Wait
  602. ============
  603.  - Command: msgminwait SEC
  604.      (none)
  605.      Defines the time `screen' delays a new message when another is
  606.      currently displayed.  Defaults to 1 second.
  607.  - Command: msgwait SEC
  608.      (none)
  609.      Defines the time a message is displayed, if `screen' is not
  610.      disturbed by other activity.  Defaults to 5 seconds.
  611. File: screen.info,  Node: Logging,  Next: Startup,  Prev: Message Line,  Up: Top
  612. Logging
  613. *******
  614.    This section describes the commands for keeping a record of your
  615. session.
  616. * Menu:
  617. * Hardcopy::                    Dump the current screen to a file
  618. * Log::                         Log the output of a window to a file
  619. File: screen.info,  Node: Hardcopy,  Next: Log,  Up: Logging
  620. hardcopy
  621. ========
  622.  - Command: hardcopy
  623.      (`C-a h', `C-a C-h')
  624.      Writes out the current display contents to the file `hardcopy.N'
  625.      in the window's default directory, where N is the number of the
  626.      current window.  This either appends or overwrites the file if it
  627.      exists, as determined by the `hardcopy_append' command.
  628.  - Command: hardcopy_append STATE
  629.      (none)
  630.      If set to `on', `screen' will append to the `hardcopy.N' files
  631.      created by the command `hardcopy'; otherwise, these files are
  632.      overwritten each time.
  633.  - Command: hardcopydir DIRECTORY
  634.      (none)
  635.      Defines a directory where hardcopy files will be placed.  If unset
  636.      hardcopys are dumped in screen's current working directory.
  637. File: screen.info,  Node: Log,  Prev: Hardcopy,  Up: Logging
  638.  - Command: log [STATE]
  639.      (`C-a H')
  640.      Begins/ends logging of the current window to the file
  641.      `screenlog.N' in the window's default directory, where N is the
  642.      number of the current window.  This filename can be changed with
  643.      the `logfile' command.  If no parameter is given, the logging
  644.      state is toggled.  The session log is appended to the previous
  645.      contents of the file if it already exists.  The current contents
  646.      and the contents of the scrollback history are not included in the
  647.      session log.  Default is `off'.
  648.  - Command: logfile FILENAME
  649.      (none)
  650.      Defines the name the logfiles will get. The default is
  651.      `screenlog.%n'.
  652. File: screen.info,  Node: Startup,  Next: Miscellaneous,  Prev: Logging,  Up: Top
  653. Startup
  654. *******
  655.    This section describes commands which are only useful in the
  656. `.screenrc' file, for use at startup.
  657. * Menu:
  658. * echo::                        Display a message.
  659. * sleep::                       Pause execution of the `.screenrc'.
  660. * Startup Message::             Control display of the copyright notice.
  661. File: screen.info,  Node: echo,  Next: sleep,  Up: Startup
  662.  - Command: echo [-n] MESSAGE
  663.      (none)
  664.      The echo command may be used to annoy `screen' users with a
  665.      'message of the day'. Typically installed in a global screenrc.
  666.      The option `-n' may be used to suppress the line feed.  See also
  667.      `sleep'.  Echo is also useful for online checking of environment
  668.      variables.
  669. File: screen.info,  Node: sleep,  Next: Startup Message,  Prev: echo,  Up: Startup
  670. sleep
  671. =====
  672.  - Command: sleep NUM
  673.      (none)
  674.      This command will pause the execution of a .screenrc file for NUM
  675.      seconds.  Keyboard activity will end the sleep.  It may be used to
  676.      give users a chance to read the messages output by `echo'.
  677. File: screen.info,  Node: Startup Message,  Prev: sleep,  Up: Startup
  678. Startup Message
  679. ===============
  680.  - Command: startup_message STATE
  681.      (none)
  682.      Select whether you want to see the copyright notice during startup.
  683.      Default is `on', as you probably noticed.
  684. File: screen.info,  Node: Miscellaneous,  Next: Environment,  Prev: Startup,  Up: Top
  685. Miscellaneous commands
  686. **********************
  687.    The commands described here do not fit well under any of the other
  688. categories.
  689. * Menu:
  690. * At::                          Execute a command at other displays or windows.
  691. * Break::                       Send a break signal to the window.
  692. * Debug::                       Suppress/allow debugging output.
  693. * License::                     Display the disclaimer page.
  694. * Nethack::                     Use `nethack'-like error messages.
  695. * Number::                      Change the current window's number.
  696. * Silence::            Notify on inactivity.
  697. * Time::                        Display the time and load average.
  698. * Version::                     Display the version of `screen'.
  699. * Zombie::                      Keep dead windows.
  700. * Printcmd::                    Set command for VT100 printer port emulation.
  701. * Sorendition::            Change the text highlighting method.
  702. File: screen.info,  Node: At,  Next: Break,  Up: Miscellaneous
  703.  - Command: at [IDENTIFIER][#|*|%] COMMAND [ARGS]
  704.      (none)
  705.      Execute a command at other displays or windows as if it had been
  706.      entered there.  `At' changes the context (the `current window' or
  707.      `current display' setting) of the command. If the first parameter
  708.      describes a non-unique context, the command will be executed
  709.      multiple times. If the first parameter is of the form
  710.      `IDENTIFIER*' then identifier is matched against user names.  The
  711.      command is executed once for each display of the selected user(s).
  712.      If the first parameter is of the form `IDENTIFIER%' identifier is
  713.      matched against displays. Displays are named after the ttys they
  714.      attach. The prefix `/dev/' or `/dev/tty' may be omitted from the
  715.      identifier.  If IDENTIFIER has a `#' or nothing appended it is
  716.      matched against window numbers and titles. Omitting an identifier
  717.      in front of the `#', `*' or `%' character selects all users,
  718.      displays or windows because a prefix-match is performed. Note that
  719.      on the affected display(s) a short message will describe what
  720.      happened. Caution: Permission is checked for the owners or the
  721.      affected display(s), not for the initiator of the `at' command.
  722. File: screen.info,  Node: Break,  Next: Debug,  Prev: At,  Up: Miscellaneous
  723. Break
  724. =====
  725.  - Command: break [DURATION]
  726.      (none)
  727.      Send a break signal for DURATION*0.25 seconds to this window.
  728.      Most useful if a character device is attached to the window rather
  729.      than a shell process.
  730.  - Command: pow_break
  731.      (none)
  732.      Reopen the window's terminal line and send a break condition.
  733. File: screen.info,  Node: Debug,  Next: License,  Prev: Break,  Up: Miscellaneous
  734. Debug
  735. =====
  736.  - Command: debug [ON|OFF]
  737.      (none)
  738.      Turns runtime debugging on or off. If `screen' has been compiled
  739.      with option `-DDEBUG' debugging is available and is turned on per
  740.      default.  Note that this command only affects debugging output
  741.      from the main `SCREEN' process.
  742. File: screen.info,  Node: License,  Next: Nethack,  Prev: Debug,  Up: Miscellaneous
  743. License
  744. =======
  745.  - Command: license
  746.      (none)
  747.      Display the disclaimer page. This is done whenever `screen' is
  748.      started without options, which should be often enough.
  749. File: screen.info,  Node: Nethack,  Next: Number,  Prev: License,  Up: Miscellaneous
  750. Nethack
  751. =======
  752.  - Command: nethack STATE
  753.      (none)
  754.      Changes the kind of error messages used by `screen'.  When you are
  755.      familiar with the game `nethack', you may enjoy the nethack-style
  756.      messages which will often blur the facts a little, but are much
  757.      funnier to read. Anyway, standard messages often tend to be
  758.      unclear as well.
  759.      This option is only available if `screen' was compiled with the
  760.      NETHACK flag defined (*note Installation::.). The default setting
  761.      is then determined by the presence of the environment variable
  762.      `$NETHACKOPTIONS'.
  763. File: screen.info,  Node: Number,  Next: Silence,  Prev: Nethack,  Up: Miscellaneous
  764. Number
  765. ======
  766.  - Command: number [N]
  767.      (`C-a N')
  768.      Change the current window's number. If the given number N is
  769.      already used by another window, both windows exchange their
  770.      numbers. If no argument is specified, the current window number
  771.      (and title) is shown.
  772. File: screen.info,  Node: Silence,  Next: Time,  Prev: Number,  Up: Miscellaneous
  773. Silence
  774. =======
  775.  - Command: silence [STATE|SEC]
  776.      (none)
  777.      Toggles silence monitoring of windows. When silence is turned on
  778.      and an affected window is switched into the background, you will
  779.      receive the silence notification message in the status line after
  780.      a specified period of inactivity (silence). The default timeout
  781.      can be changed with the `silencewait' command or by specifying a
  782.      number of seconds instead of `on' or `off'. Silence is initially
  783.      off for all windows.
  784.  - Command: silencewait SECONDS
  785.      (none)
  786.      Define the time that all windows monitored for silence should wait
  787.      before displaying a message. Default is 30 seconds.
  788. File: screen.info,  Node: Time,  Next: Version,  Prev: Silence,  Up: Miscellaneous
  789.  - Command: time
  790.      (`C-a t', `C-a C-t')
  791.      Uses the message line to display the time of day, the host name,
  792.      and the load averages over 1, 5, and 15 minutes (if this is
  793.      available on your system).  For window-specific information use
  794.      `info' (*note Info::.).
  795. File: screen.info,  Node: Version,  Next: Zombie,  Prev: Time,  Up: Miscellaneous
  796. Version
  797. =======
  798.  - Command: version
  799.      (`C-a v')
  800.      Display the version and modification date in the message line.
  801. File: screen.info,  Node: Zombie,  Next: Printcmd,  Prev: Version,  Up: Miscellaneous
  802. Zombie
  803. ======
  804.  - Command: zombie [KEYX]
  805.  - Command: defzombie [KEYX]
  806.      (none)
  807.      Per default windows are removed from the window list as soon as the
  808.      windows process (e.g. shell) exits. When a string of two keys is
  809.      specified to the zombie command, `dead' windows will remain in the
  810.      list.  The `kill' kommand may be used to remove the window.
  811.      Pressing the first key in the dead window has the same effect.
  812.      Pressing the second key, however, screen will attempt to resurrect
  813.      the window. The process that was initially running in the window
  814.      will be launched again. Calling `zombie' without parameters will
  815.      clear the zombie setting, thus making windows disappear when the
  816.      process terminates.
  817.      As the zombie setting is affected globally for all windows, this
  818.      command should only be called `defzombie'. Until we need this as a
  819.      per window setting, the commands `zombie' and `defzombie' are
  820.      synonymous.
  821. File: screen.info,  Node: Printcmd,  Next: Sorendition,  Prev: Zombie,  Up: Miscellaneous
  822. Printcmd
  823. ========
  824.  - Command: printcmd [CMD]
  825.      (none)
  826.      If CMD is not an empty string, screen will not use the terminal
  827.      capabilities `po/pf' for printing if it detects an ansi print
  828.      sequence `ESC [ 5 i', but pipe the output into CMD.  This should
  829.      normally be a command like `lpr' or `cat > /tmp/scrprint'.
  830.      `Printcmd' without an argument displays the current setting.  The
  831.      ansi sequence `ESC \' ends printing and closes the pipe.
  832.      Warning: Be careful with this command! If other user have write
  833.      access to your terminal, they will be able to fire off print
  834.      commands.
  835. File: screen.info,  Node: Sorendition,  Prev: Printcmd,  Up: Miscellaneous
  836. Sorendition
  837. ===========
  838.  - Command: sorendition [ATTR [COLOR]]
  839.      (none)
  840.      Change the way screen does highlighting for text marking and
  841.      printing messages.  ATTR is a hexadecimal number and describes the
  842.      attributes (inverse, underline, ...) the text will get.  COLOR is
  843.      a 2 digit number and changes the forground/background of the
  844.      highlighted text.  Some knowledge of screen's internal character
  845.      representation is needed to make the characters appear in the
  846.      desired way. The default is currently `10 99' (standout, default
  847.      colors).
  848. File: screen.info,  Node: Environment,  Next: Files,  Prev: Miscellaneous,  Up: Top
  849. Environment Variables
  850. *********************
  851. `COLUMNS'
  852.      Number of columns on the terminal (overrides termcap entry).
  853. `HOME'
  854.      Directory in which to look for .screenrc.
  855. `ISCREENRC'
  856.      Alternate user screenrc file.
  857. `LINES'
  858.      Number of lines on the terminal (overrides termcap entry).
  859. `LOCKPRG'
  860.      Screen lock program.
  861. `NETHACKOPTIONS'
  862.      Turns on `nethack' option.
  863. `PATH'
  864.      Used for locating programs to run.
  865. `SCREENCAP'
  866.      For customizing a terminal's `TERMCAP' value.
  867. `SCREENDIR'
  868.      Alternate socket directory.
  869. `SCREENRC'
  870.      Alternate user screenrc file.
  871. `SHELL'
  872.      Default shell program for opening windows (default `/bin/sh').
  873. `STY'
  874.      Alternate socket name. If `screen' is invoked, and the environment
  875.      variable `STY' is set, then it creates only a window in the
  876.      running `screen' session rather than starting a new session.
  877. `SYSSCREENRC'
  878.      Alternate system screenrc file.
  879. `TERM'
  880.      Terminal name.
  881. `TERMCAP'
  882.      Terminal description.
  883. File: screen.info,  Node: Files,  Next: Credits,  Prev: Environment,  Up: Top
  884. Files Referenced
  885. ****************
  886. `.../screen-3.?.??/etc/screenrc'
  887. `.../screen-3.?.??/etc/etcscreenrc'
  888.      Examples in the `screen' distribution package for private and
  889.      global initialization files.
  890. ``$SYSSCREENRC''
  891. `/local/etc/screenrc'
  892.      `screen' initialization commands
  893. ``$ISCREENRC''
  894. ``$SCREENRC''
  895. ``$HOME'/.iscreenrc'
  896. ``$HOME'/.screenrc'
  897.      Read in after /local/etc/screenrc
  898. ``$ISCREENDIR'/S-LOGIN'
  899. ``$SCREENDIR'/S-LOGIN'
  900. `/local/screens/S-LOGIN'
  901.      Socket directories (default)
  902. `/usr/tmp/screens/S-LOGIN'
  903.      Alternate socket directories.
  904. `SOCKET DIRECTORY/.termcap'
  905.      Written by the `dumptermcap' command
  906. `/usr/tmp/screens/screen-exchange or'
  907. `/tmp/screen-exchange'
  908.      `screen' interprocess communication buffer
  909. `hardcopy.[0-9]'
  910.      Screen images created by the hardcopy command
  911. `screenlog.[0-9]'
  912.      Output log files created by the log command
  913. `/usr/lib/terminfo/?/* or'
  914. `/etc/termcap'
  915.      Terminal capability databases
  916. `/etc/utmp'
  917.      Login records
  918. ``$LOCKPRG''
  919.      Program for locking the terminal.
  920. File: screen.info,  Node: Credits,  Next: Bugs,  Prev: Files,  Up: Top
  921. Credits
  922. *******
  923. Authors
  924. =======
  925.    Originally created by Oliver Laumann, this latest version was
  926. produced by Wayne Davison, Juergen Weigert and Michael Schroeder.
  927. Contributors
  928. ============
  929.           Ken Beal (kbeal@amber.ssd.csd.harris.com),
  930.           Rudolf Koenig (rfkoenig@informatik.uni-erlangen.de),
  931.           Toerless Eckert (eckert@informatik.uni-erlangen.de),
  932.           Wayne Davison (davison@borland.com),
  933.           Patrick Wolfe (pat@kai.com, kailand!pat),
  934.           Bart Schaefer (schaefer@cse.ogi.edu),
  935.           Nathan Glasser (nathan@brokaw.lcs.mit.edu),
  936.           Larry W. Virden (lvirden@cas.org),
  937.           Howard Chu (hyc@hanauma.jpl.nasa.gov),
  938.           Tim MacKenzie (tym@dibbler.cs.monash.edu.au),
  939.           Markku Jarvinen (mta@{cc,cs,ee}.tut.fi),
  940.           Marc Boucher (marc@CAM.ORG),
  941.           Doug Siebert (dsiebert@isca.uiowa.edu),
  942.           Ken Stillson (stillson@tsfsrv.mitre.org),
  943.           Ian Frechett (frechett@spot.Colorado.EDU),
  944.           Brian Koehmstedt (bpk@gnu.ai.mit.edu),
  945.           Don Smith (djs6015@ultb.isc.rit.edu),
  946.           Frank van der Linden (vdlinden@fwi.uva.nl),
  947.           Martin Schweikert (schweik@cpp.ob.open.de),
  948.           David Vrona (dave@sashimi.lcu.com),
  949.           E. Tye McQueen (tye%spillman.UUCP@uunet.uu.net),
  950.           Matthew Green (mrgreen@mame.mu.oz.au),
  951.           Christopher Williams (cgw@unt.edu),
  952.           Matt Mosley (mattm@access.digex.net),
  953.           Gregory Neil Shapiro (gshapiro@wpi.WPI.EDU),
  954.           Jason Merrill (jason@jarthur.Claremont.EDU).
  955. Version
  956. =======
  957.    This manual describes version 3.7.0 of the `screen' program. Its
  958. roots are a merge of a custom version 2.3PR7 by Wayne Davison and
  959. several enhancements to Oliver Laumann's version 2.0.  Note that all
  960. versions numbered 2.x are copyright by Oliver Laumann.
  961.    See also *Note Availability::.
  962. File: screen.info,  Node: Bugs,  Next: Installation,  Prev: Credits,  Up: Top
  963.    Just like any other significant piece of software, `screen' has a
  964. few bugs and missing features.  Please send in a bug report if you have
  965. found a bug not mentioned here.
  966. * Menu:
  967. * Known Bugs::                  Problems we know about.
  968. * Reporting Bugs::              How to contact the maintainers.
  969. * Availability::                Where to find the lastest screen version.
  970. File: screen.info,  Node: Known Bugs,  Next: Reporting Bugs,  Up: Bugs
  971. Known Bugs
  972. ==========
  973.    * `dm' (delete mode) and `xs' are not handled correctly (they are
  974.      ignored).  `xn' is treated as a magic-margin indicator.
  975.    * `screen' has no clue about double-high or double-wide characters.
  976.      But this is the only area where `vttest' is allowed to fail.
  977.    * It is not possible to change the environment variable `$TERMCAP'
  978.      when reattaching under a different terminal type.
  979.    * The support of terminfo based systems is very limited. Adding extra
  980.      capabilities to `$TERMCAP' may not have any effects.
  981.    * `screen' does not make use of hardware tabs.
  982.    * `screen' must be installed setuid root in order to be able to
  983.      correctly change the owner of the tty device file for each window.
  984.      Special permission may also be required to write the file
  985.      `/etc/utmp'.
  986.    * Entries in `/etc/utmp' are not removed when `screen' is killed
  987.      with SIGKILL.  This will cause some programs (like "w" or "rwho")
  988.      to advertise that a user is logged on who really isn't.
  989.    * `screen' may give a strange warning when your tty has no utmp
  990.      entry.
  991.    * When the modem line was hung up, `screen' may not automatically
  992.      detach (or quit) unless the device driver sends a HANGUP signal.
  993.      To detach such a `screen' session use the -D or -d command line
  994.      option.
  995.    * A weird imagination is most useful to gain full advantage of all
  996.      the features.
  997.